package main

import (
	"fmt"
	"github.com/natefinch/lumberjack"
	"go.uber.org/zap"
	"go.uber.org/zap/zapcore"
	"os"
)

var logger *zap.Logger

func init() {
	_, err := os.Stat("./log")
	if err != nil {
		err = os.Mkdir("./log", os.ModePerm)
		if err != nil {
			fmt.Println("创建日志目录错误")
			panic(err)
		} else {
			fmt.Println("日志目录创建完成")
		}
	}
	encoderConfig := zap.NewProductionEncoderConfig()
	encoderConfig.EncodeTime = zapcore.ISO8601TimeEncoder
	encoderConfig.EncodeLevel = zapcore.CapitalLevelEncoder
	encoder := zapcore.NewConsoleEncoder(encoderConfig)
	lumberJackLogger := &lumberjack.Logger{
		Filename:   "./log/log.txt", //日志文件的位置
		MaxSize:    1,               //在进行切割之前，日志文件的最大大小（以MB为单位）
		MaxBackups: 5,               //保留旧文件的最大个数
		MaxAge:     7,               //保留旧文件的最大天数
		Compress:   true,            //是否压缩/归档旧文件
	}
	WriteSyncer := zapcore.AddSync(lumberJackLogger)
	core := zapcore.NewCore(encoder, WriteSyncer, zapcore.DebugLevel)
	logger = zap.New(core, zap.AddCaller())
	defer logger.Sync()
}
func main() {
	go InitServer()
	router()
}
